DAX (Data Analysis Expressions) একটি শক্তিশালী এক্সপ্রেশন ভাষা যা Power BI, PowerPivot, এবং SQL Server Analysis Services (SSAS)-এ ব্যবহৃত হয়। Time-based aggregation বা time intelligence ক্যালকুলেশন ডেটাকে নির্দিষ্ট সময়ের ভিত্তিতে বিশ্লেষণ এবং সারাংশ তৈরি করতে ব্যবহৃত হয়। DAX-এ TOTALYTD, TOTALQTD, এবং TOTALMTD ফাংশনগুলি একটি নির্দিষ্ট সময়সীমার (বছর, ত্রৈমাসিক, মাস) জন্য cumulative aggregation বা running totals তৈরি করতে ব্যবহৃত হয়। এই ফাংশনগুলি year-to-date (YTD), quarter-to-date (QTD), এবং month-to-date (MTD) বিশ্লেষণের জন্য অত্যন্ত কার্যকরী।
এখানে আমরা এই তিনটি গুরুত্বপূর্ণ DAX ফাংশন নিয়ে বিস্তারিত আলোচনা করব এবং দেখব কীভাবে এগুলোর মাধ্যমে time-based aggregation করা যায়।
১. TOTALYTD (Year-to-Date)
TOTALYTD ফাংশনটি year-to-date (YTD) aggregation করার জন্য ব্যবহৃত হয়, যেখানে একটি নির্দিষ্ট বছর (এবং তারিখ) পর্যন্ত মোট মূল্য গণনা করা হয়। এটি date কলামের ভিত্তিতে সমস্ত পূর্ববর্তী দিন বা মাসের জন্য চলতি বছরের মোট পরিমাণ গণনা করে।
Syntax:
TOTALYTD(<expression>, <dates>, [<filter>], [<year_end_date>])
- : এটি সেই মান বা গণনা যার উপর আপনি YTD aggregation করতে চান (যেমন: Sales[Amount])।
- : এটি সেই কলাম যা date টাইপের হবে এবং যেটি টাইম সিরিজের ডেটার সাথে সম্পর্কিত।
- (অপশনাল): নির্দিষ্ট শর্ত প্রয়োগ করার জন্য।
- <year_end_date> (অপশনাল): বছরের শেষ তারিখ নির্ধারণ করতে (যেমন ডিসেম্বর 31)। ডিফল্ট মান হল ডিসেম্বর 31।
ব্যবহার:
ধরা যাক, আপনি Sales টেবিলের Amount এর Year-to-Date হিসাব করতে চান:
Sales YTD = TOTALYTD(SUM(Sales[Amount]), Sales[Date])
এই ফাংশনটি Sales[Amount] এর জন্য YTD মোট বিক্রয় হিসাব করবে, যেখানে Sales[Date] কলামের ভিত্তিতে বছরের শুরু থেকে এখন পর্যন্ত বিক্রয়ের যোগফল হবে।
২. TOTALQTD (Quarter-to-Date)
TOTALQTD ফাংশনটি quarter-to-date (QTD) aggregation করার জন্য ব্যবহৃত হয়, যেখানে একটি নির্দিষ্ট ত্রৈমাসিকের (quarter) শুরু থেকে আজ পর্যন্ত মোট মান গণনা করা হয়।
Syntax:
TOTALQTD(<expression>, <dates>, [<filter>])
- : গণনা বা পরিমাণ যা আপনি QTD হিসাবে চান।
- : date কলাম বা তারিখের একটি কলাম।
- (অপশনাল): কোনো নির্দিষ্ট শর্ত প্রয়োগ করতে।
ব্যবহার:
ধরা যাক, আপনি Sales টেবিলের Amount এর Quarter-to-Date হিসাব করতে চান:
Sales QTD = TOTALQTD(SUM(Sales[Amount]), Sales[Date])
এই ফাংশনটি Sales[Amount] এর জন্য Quarter-to-Date মোট বিক্রয় গণনা করবে, যেখানে Sales[Date] কলামের ভিত্তিতে বর্তমান ত্রৈমাসিকের শুরু থেকে আজ পর্যন্ত বিক্রয়ের যোগফল হবে।
৩. TOTALMTD (Month-to-Date)
TOTALMTD ফাংশনটি month-to-date (MTD) aggregation করার জন্য ব্যবহৃত হয়, যেখানে নির্দিষ্ট মাসের (month) শুরু থেকে আজ পর্যন্ত মোট মান গণনা করা হয়।
Syntax:
TOTALMTD(<expression>, <dates>, [<filter>])
- : গণনা বা পরিমাণ যা আপনি MTD হিসাবে চান।
- : date কলাম বা তারিখের একটি কলাম।
- (অপশনাল): কোনো নির্দিষ্ট শর্ত প্রয়োগ করতে।
ব্যবহার:
ধরা যাক, আপনি Sales টেবিলের Amount এর Month-to-Date হিসাব করতে চান:
Sales MTD = TOTALMTD(SUM(Sales[Amount]), Sales[Date])
এই ফাংশনটি Sales[Amount] এর জন্য Month-to-Date মোট বিক্রয় গণনা করবে, যেখানে Sales[Date] কলামের ভিত্তিতে বর্তমান মাসের শুরু থেকে আজ পর্যন্ত বিক্রয়ের যোগফল হবে।
TOTALYTD, TOTALQTD, এবং TOTALMTD এর মধ্যে পার্থক্য
| ফাংশন | TOTALYTD | TOTALQTD | TOTALMTD |
|---|---|---|---|
| অর্থ | বছরের শুরু থেকে বর্তমান তারিখ পর্যন্ত মোট মান। | ত্রৈমাসিকের শুরু থেকে বর্তমান তারিখ পর্যন্ত মোট মান। | মাসের শুরু থেকে বর্তমান তারিখ পর্যন্ত মোট মান। |
| ব্যবহার | Year-to-Date পরিমাপ করতে। | Quarter-to-Date পরিমাপ করতে। | Month-to-Date পরিমাপ করতে। |
| প্রধান শর্ত | বছরের শুরু থেকে সমস্ত তারিখের যোগফল। | ত্রৈমাসিকের শুরু থেকে সমস্ত তারিখের যোগফল। | মাসের শুরু থেকে সমস্ত তারিখের যোগফল। |
| দৃষ্টান্ত | বছরের মোট বিক্রয় পরিমাণ। | ত্রৈমাসিক বিক্রয় পরিমাণ। | মাসের বিক্রয় পরিমাণ। |
উদাহরণ: Time-based Aggregation এর ব্যবহার
১. TOTALYTD উদাহরণ
যদি আপনি Sales টেবিলের মোট বিক্রয় বের করতে চান বছরের শুরু থেকে আজ পর্যন্ত:
Sales YTD = TOTALYTD(SUM(Sales[Amount]), Sales[Date])
এটি Sales[Amount] এর জন্য Year-to-Date বিক্রয় পরিমাণ গণনা করবে।
২. TOTALQTD উদাহরণ
যদি আপনি Sales টেবিলের বিক্রয় পরিমাণ বের করতে চান এই ত্রৈমাসিকের শুরু থেকে আজ পর্যন্ত:
Sales QTD = TOTALQTD(SUM(Sales[Amount]), Sales[Date])
এটি Sales[Amount] এর জন্য Quarter-to-Date বিক্রয় পরিমাণ বের করবে।
৩. TOTALMTD উদাহরণ
যদি আপনি Sales টেবিলের বিক্রয় পরিমাণ বের করতে চান এই মাসের শুরু থেকে আজ পর্যন্ত:
Sales MTD = TOTALMTD(SUM(Sales[Amount]), Sales[Date])
এটি Sales[Amount] এর জন্য Month-to-Date বিক্রয় পরিমাণ বের করবে।
সারাংশ
TOTALYTD, TOTALQTD, এবং TOTALMTD ফাংশনগুলি time intelligence ক্যালকুলেশনে ব্যবহৃত হয়, যেখানে year-to-date, quarter-to-date, এবং month-to-date বিশ্লেষণ করা হয়। এগুলি একটি নির্দিষ্ট সময়সীমার মধ্যে ডেটার মোট পরিমাণ বা রানিং টোটাল হিসাব করতে ব্যবহৃত হয়। এই ফাংশনগুলির মাধ্যমে আপনি Power BI বা Excel-এ বিভিন্ন টাইম-বেসড বিশ্লেষণ করতে পারবেন, যা ব্যবসায়িক সিদ্ধান্ত গ্রহণে সহায়ক।
Read more